Requirements: System 7.x or later, CD-ROM drive, 3 MB RAM, 12 MB for documentation (optional)
 
RIP ResEdit
ResEdit is, for all intents and purposes, dead. Apple is no longer updating it — in fact, it was last updated in 1994. Its functionality is still quite high at present, but how long it will remain an all-around "useful" tool remains to be seen. A great many hackers are disappointed by ResEdit's death — it is their weapon of choice. After all, it's free.
As ResEdit nears its last breath, many resource-editing folks are beginning to look for alternatives. There's really only one: Resorcerer. Resorcerer has long been a software development tool for Mac programmers and is now beginning to flood the mainstream resource editing market. For those of you who are interested, David Every wrote a hacking article using Resorcerer in the Jul/98 issue of MacAddict.
This review focuses almost entirely on the "hacking" aspect of Resorcerer. Specifically, it explores Resorcerer through the eyes of a Mac fan who enjoys hacking his system, looking at and poking around in files, and much more. Resorcerer is a top development tool, as I've mentioned before, and we've included a section devoted to using Resorcerer as a development tool, but that is not the main focus of this review.
For those of you interested in David's continuing work, he has republished some material and added some supplemental information on his MacKiDo website. Point your browser to http://www.mackido.com/Hack/ for more.
 
Making the Transition
Experienced ResEditers will need about five minutes to become accustomed to the Resorcerer interface. Gone are the little icons that represent each resource type — instead, users will find a quick list on the left (see graphic below). Everything about Resorcerer is built around the user and has speed and efficiency as its end goal. Mini-icons such as those seen in the below graphic (see the trash can icons in the right-hand frame) quickly illustrate whether a resource is purgeable, preloaded, locked, and more. Buttons are conveniently placed and offer valuable functions that permit you to skip fly past menu or keyboard shortcuts. Take a gander at the window below for an example of Resorcerer's layout.
 
Long-time ResEditers will no doubt be forced to relearn some keyboard shortcuts. However, the time invested will pay off later as you quickly navigate through resource forks, happily hacking away.
Every ResEdit feature is present (and oftentimes greatly enhanced) in Resorcerer. For example, when pasting in resources which have a common ID, ResEdit offers you the option of replacing the old ones, creating unique IDs for the pasted pieces, or cancelling. Resorcerer allows you to do this on an individual or group basis. Things like this will save time and help you to avoid mistakes, letting you test out your hack more quickly and with greater confidence.
As readers of Apple Wizards will know, BBEdit is one of my favorite applications. In this context, I feel it's appropriate to compare Resorcerer to BBEdit. Both are fine pieces of software that seem rather bland at first glance. However, as you get into them, you see that both are powerful, well-thought-out pieces of software that enable you to work easily and with great confidence.
 
RTFM Revisited
In last month's review of Style Master, I revised the common abbreviation RTFM. This month I will revise it yet again as it relates to Resorcerer. RTFM now stands for "Read the Fantastic Manual."
The Resorcerer manual is one of the most comprehensive I've ever seen. Not only does the manual discuss the use and methods of Resorcerer itself, but it also covers resource forks, Macintosh filing systems, and a great deal more information that is important (or should be) to anyone who hacks or develops their own software.
 
Because Resorcerer is, after all, a fairly complex application that can do a great deal of damage to your system if you're not careful (you know the rules: work on a copy of your files, etc.), reading the documentation is highly recommended. Not only will you learn about how best to operate Resorcerer, but you will learn quite a lot about the way the Mac treats software. And, should you read one section in particular, you'll find out how to edit your Mac's ROM... pretty interesting, n'est-ce pas?
 
It Never Met a Resource It Didn't Want to Hack
I've hacked them all: icl8, MENU, DLOG and DTIL, fmn2, vers, and more. I've modified my system software, my applications, and my own software. I've hacked icons in extensions and default filename extensions in applications. I've hacked my menu to say "I Love Jessica" because I do. In ResEdit, these varying resources are hacked in the same way — through windows that appear to be the same almost all the time.
Resorcerer understands that different resources require different editing interfaces. An icon editing window should not look like a MENU editing window. To that end, Resorcerer contains a great many "custom editors." In the resource list (see the first screenshot), anything shown in bold has its very own custom editor.
For example, the icon editor is second to none. Not only can you resize the icon-editing window (editing icons at 16-32 times their normal size is particularly wonderful), but you can quickly choose from recommended system colors, add masks, and more. Furthermore, when editing cursors, Resorcerer allows you to try them out without leaving the editing dialog box — very handy.
As an interesting note, Mathemaesthetics (the creator of Resorcerer) is frantically working to add icns (Mac OS 8.5 icon) support, so expect to see this functionality soon. I, for one, can't wait. Currently, icns resources show up as gibblets of code. Editing 32-bit (millions-of-color) icons within a resource editor (and not Photoshop) will be great!
The menu editor is another fine example of custom solutions to resource-editing needs. From the manual:
Whenever possible and appropriate, an Editor will edit groups of related resources in an integrated way, so that you can think of the group as a single entity. For instance, the Menu Editor lets you rearrange an entire menu by choosing the Reorder command and simply clicking on the menu items in the order you want them to appear. Since the Editor also edits the menu's optional color table resource at the same time, the entries in the color table will also be reordered.
Try to do that in ResEdit — it just can't be done.
For software developers, the aete resource editor is almost worth the asking price of $256 alone. The aete, or AppleEvents resource, contains plain-word descriptions of any application's (including the Finder's) AppleEvents. This allows you to create inter-application operations. For example, DOCMaker (Apple Wizards' primary publishing format) allows use of AppleEvents as picture actions, and the aete resource editor allows us to look at any and all possible AppleEvents (from opening your browser to emptying your trash can).
 
So You Wanna Develop Software, Do Ya?
If you're a Mac developer who still relies on ResEdit, you should consider updating your array of tools to include Resorcerer. Resorcerer includes all of the standard tools that you are familiar with and some that you won't be able to live without once you try them out for the first time.
For example, hex support includes a display of the current insertion offset as well as the selection ranges within the checksum. There is also a feature that allows users to find the next difference between two hex editing windows.
With the release of Mac OS 8, ResEdit became outdated because it didn't support the Appearance Manager. Resorcerer has an excellent layout interface for the Mac OS 8.x Appearance Manager controls (version 1.02 of the headers). The Dialog Editor itself is very helpful in controlling dialog elements. It includes basics such as auto-sizing of elements.
Resorcerer also has a very nifty little feature: Single-Instruction PowerPC Disassembly to English. The first thought that came to my mind was "yeah right." Resorcerer's 32-bit Value Converter outputs the PowerPC instruction with the hex value 33F120064 into assembly as addis r24, 418, 100
Add Immediate Shifted
Add 100 (shifted left 16 bits) to r18 and store the result in r24
That can be a major help when debugging code. It saves an immense amount of time that would otherwise be spent leafing through books looking for the information you seek on a particular instruction. The time saved utilizing this feature alone could literally pay for the software in less than one day.
Basically, many software developers look at it this way: you always want the best. CodeWarrior is probably the best development environment, and Resorcerer is the best resource-editing environment.
 
Living in the Dark Ages?
Let's suppose you want to find every occurrence of the word "AOL" in Claris Emailer (which has great AOL support). You may fire up ResEdit and use its antiquated, nay, Dark-Age-like tools, or you could fire up Resorcerer and use simple, easy-to-understand, and powerful search tools like the one seen below.
 
Can you do this in ResEdit? No. Truth is, ResEdit's day has come. And gone. Resorcerer is the future. Are you ready to ride this train? There is a demo available at http://www.mathemaesthetics.com/ for the faint of heart. The cover price ($256) may scare many, but once you realize how powerful and altogether useful Resorcerer is, you will be too productive to remember that it cost a pretty penny.